// 大程序结构: 项目

// <>: 让编译器只在指定的目录找头文件 -> /usr/include
#include <stdio.h>
// "": 要求编译器首先在当前目录(.c文件所在的目录)寻找头文件, \
// 如果找不到再去指定目录找
#include "max.h"
// #include 是一个预编译预处理指令, 和宏一样, 在编译之前就处理了
// 它把那个文件的全部文本内容原封不动地插入到它所在的地方
// 所以不一定放在最前面

// TIPS:
// 在使用和定义头文件里的函数的地方都应该#include
// 一般做法就使任何.c都有对应的同名.h, \
// 把所有对外公开的函数的原型和全局变量的声明都放进去

// 不对外公开的函数:
// 使用 static: 在全局函数前加 static, 则函数成为只能在它所在的编译单元 \
// (.c文件)中使用的函数
// 在全局变量前使用 static 效果相同

// 不声明也行, 编译器会猜输入类型
int max(int, int);

int main(int argc, char const *argv[])
{
    int a, b, maxi;
    a = 1;
    b = 5;

    maxi = max(a, gAll);
    printf("max = %d\n", maxi);
    
    return 0;
}